﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//
using CredisysTriunfadores.BusinessEntites.Prestamos;
using CredisysTriunfadores.BusinessLogic.Prestamos.Interfaz;
using CredisysTriunfadores.BusinessLogic.Validaciones;
using CredisysTriunfadores.Repository.Prestamos.Interfaz;
using Microsoft.Practices.Unity;   //dependencias

namespace CredisysTriunfadores.BusinessLogic.Prestamos
{
    public class PrestamoBL:IPrestamoBL
    {
        [Dependency]
        public IPrestamoAD PrestamoAD { get; set; }

        [Dependency]
        public PrestamoValidacion prestamoValidacion { get; set; }

        public IEnumerable<Prestamo> GetAllPrestamos()
        {
            return PrestamoAD.GetAllPrestamos();
        }

        public bool AddPrestamo(Prestamo prestamo)
        {
            if (!prestamoValidacion.Pass(prestamo)) return false;

            PrestamoAD.AddPrestamo(prestamo);
            return true;
        }


        public IEnumerable<Prestamo> GetAllPrestamosByCriterio(string criterio)
        {
            return PrestamoAD.GetAllPrestamosByCriterio(criterio);
        }
    }
}
